From: Keir Fraser Date: Fri, 18 Dec 2009 07:53:27 +0000 (+0000) Subject: xenstore: Fix the method of get options and the usage X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~12840 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks://%22/%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22?a=commitdiff_plain;h=344e13af46cdb531897899ac40708d431af0a1af;p=xen.git xenstore: Fix the method of get options and the usage Add long option '--flat' correspond to short option '-f', and let it just can be used for subcommand 'ls' (because in fact it's useless for subcommand 'read' and 'list'). And fix the usage of subcommands 'ls', 'list' and 'chmod'. Signed-off-by: Yu Zhiguo --- diff --git a/tools/xenstore/xenstore_client.c b/tools/xenstore/xenstore_client.c index 9d00c18259..aaf3014d53 100644 --- a/tools/xenstore/xenstore_client.c +++ b/tools/xenstore/xenstore_client.c @@ -88,13 +88,13 @@ usage(enum mode mode, int incl_mode, const char *progname) mstr = incl_mode ? "exists " : ""; case MODE_list: mstr = mstr ? : incl_mode ? "list " : ""; - errx(1, "Usage: %s %s[-h] [-s] key [...]", progname, mstr); + errx(1, "Usage: %s %s[-h] [-p] [-s] key [...]", progname, mstr); case MODE_ls: mstr = mstr ? : incl_mode ? "ls " : ""; - errx(1, "Usage: %s %s[-h] [-s] [path]", progname, mstr); + errx(1, "Usage: %s %s[-h] [-f] [-p] [-s] [path]", progname, mstr); case MODE_chmod: mstr = incl_mode ? "chmod " : ""; - errx(1, "Usage: %s %s[-h] [-s] key ", progname, mstr); + errx(1, "Usage: %s %s[-h] [-u] [-r] [-s] key ", progname, mstr); } } @@ -492,15 +492,16 @@ main(int argc, char **argv) int c, index = 0; static struct option long_options[] = { {"help", 0, 0, 'h'}, + {"flat", 0, 0, 'f'}, /* MODE_ls */ {"socket", 0, 0, 's'}, - {"prefix", 0, 0, 'p'}, /* MODE_read || MODE_list */ + {"prefix", 0, 0, 'p'}, /* MODE_read || MODE_list || MODE_ls */ {"tidy", 0, 0, 't'}, /* MODE_rm */ {"upto", 0, 0, 'u'}, /* MODE_chmod */ {"recurse", 0, 0, 'r'}, /* MODE_chmod */ {0, 0, 0, 0} }; - c = getopt_long(argc - switch_argv, argv + switch_argv, "fhsptur", + c = getopt_long(argc - switch_argv, argv + switch_argv, "hfsptur", long_options, &index); if (c == -1) break; @@ -510,7 +511,7 @@ main(int argc, char **argv) usage(mode, switch_argv, argv[0]); /* NOTREACHED */ case 'f': - if ( mode == MODE_read || mode == MODE_list || mode == MODE_ls ) { + if ( mode == MODE_ls ) { max_width = INT_MAX/2; desired_width = 0; show_whole_path = 1;